7e851eac699b8019c7d182978e3a0882eae42b8b,platform/lang-api/src/com/intellij/lang/folding/CustomFoldingSurroundDescriptor.java,CustomFoldingRegionSurrounder,surroundElements,#Project#Editor#PsiElement[]#,137
Before Change
String linePrefix = commenter.getLineCommentPrefix();
if (linePrefix == null) return null;
int prefixLength = linePrefix.length();
int startOffset = elements[0].getTextRange().getStartOffset();
int endOffset = elements[elements.length - 1].getTextRange().getEndOffset();
int delta = 0;
TextRange rangeToSelect = new TextRange(startOffset, startOffset);
String startText = myProvider.getStartString();
int descPos = startText.indexOf("?");
if (descPos >= 0) {
startText = startText.replace("?", DEFAULT_DESC_TEXT);
rangeToSelect = new TextRange(startOffset + descPos, startOffset + descPos + DEFAULT_DESC_TEXT.length());
}
editor.getDocument().insertString(endOffset, "\n" + linePrefix + myProvider.getEndString());
delta += myProvider.getEndString().length() + prefixLength;
editor.getDocument().insertString(startOffset, linePrefix + startText + "\n");
delta += startText.length() + prefixLength;
rangeToSelect = rangeToSelect.shiftRight(prefixLength);
TextRange formatRange = new TextRange(startOffset, endOffset).grown(delta);
After Change
String endString = "\n" + linePrefix + myProvider.getEndString();
editor.getDocument().insertString(endOffset, endString);
delta += endString.length();
editor.getDocument().insertString(startOffset, startString);
delta += startString.length();
rangeToSelect = rangeToSelect.shiftRight(prefixLength);
PsiDocumentManager documentManager = PsiDocumentManager.getInstance(project);